﻿using NLog;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace PPSMS.Commons
{
    public class NLogHelper
    {
        // 定义一个日志实例
        private static readonly Logger logger = LogManager.GetCurrentClassLogger();

        static NLogHelper()
        {
            // 初始化 NLog，它会自动读取 nlog.config 文件中的配置
            LogManager.Setup().LoadConfigurationFromFile();
        }
        // 记录调试日志
        public static void Debug(string message)
        {
            logger.Debug(message);
        }

        // 记录信息日志
        public static void Info(string message)
        {
            logger.Info(message);
        }

        // 记录警告日志
        public static void Warn(string message)
        {
            logger.Warn(message);
        }

        // 记录错误日志
        public static void Error(string message)
        {
            logger.Error(message);
        }

        // 记录异常日志
        public static void Error(Exception ex)
        {
            logger.Error(ex, ex.Message);
        }

        // 记录致命错误日志
        public static void Fatal(string message)
        {
            logger.Fatal(message);
        }

        // 记录致命错误日志并包含异常
        public static void Fatal(Exception ex)
        {
            logger.Fatal(ex, ex.Message);
        }
    }
}
